﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Net.Mail;
using System.Net;
using System.Web.Security;
public partial class RequestPassword : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void btnDoRequestPass_Click(object sender, EventArgs e)
    {
        UserBLL usr = new UserBLL();
        bool chkpass = usr.checkRequestPassword(txtTK.Text.Trim(), txtEmail.Text.Trim());
        if (chkpass==true && MailRequest(txtEmail.Text,txtTK.Text)==true)
        {
            lbNote.Text = "Thông tin thay đổi mật khẩu đã được gửi đến email quý khách! Vui lòng cập nhật";
            
        }
        else
        {
            lbNote.Text = "Không tồn tài tài khoản này!";
        }
    }
    public static bool MailRequest(string email,string usr)
    {
        string e = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(email, "SHA1");
        MailMessage mail_msg = new MailMessage();

        MailAddress to = new MailAddress(email);
        mail_msg.To.Add(to);
        MailAddress from = new MailAddress("thienduc1012@yahoo.com", "Thiên Đức");
        mail_msg.From = from;
        mail_msg.Subject = "Khôi phục mật khẩu - Shop Mobile Online";

        //nội dung gởi
        
        string str = "<html>" + "<p>Kính chào quý khách</p>"
                            + "<p>Quý khách xin vui lòng nhấn vào đường link bên dưới để nhập lại mật khẩu:</p>"
                            + "<p> <a href='http://localhost:2528/ShopMobile/UpdatePassword.aspx?encrypt=" + e +"&e="+email+"&u="+usr+"&u="+usr+"'>Nhấn vào đây!!!</a></p>"
                            + "<p>Cám ơn quý khách !!!</p>"
                            + "<p>Shop Mobile Online</p>"
                            + "</html>";
        mail_msg.Body = str;
        mail_msg.IsBodyHtml = true;
        //gửi

        try
        {
            SmtpClient client = new SmtpClient();
            client.DeliveryMethod = SmtpDeliveryMethod.Network;
            client.EnableSsl = true;
            client.Host = "smtp.gmail.com";
            client.Port = 587;
            //Yahoo
            //client.Host = "smtp.mail.yahoo.com";
            //client.Port = 465;
            NetworkCredential crede = new NetworkCredential("thienduc89@gmail.com", "vincente");
            client.UseDefaultCredentials = false;
            client.Credentials = crede;

            client.Send(mail_msg);
            return true;
        }
        catch (Exception)
        {
            return false;
        }
    }
}